package fachklassen.controls;

import java.util.ArrayList;
import java.util.List;

import fachklassen.entities.Abteilungswhiteboard;
import fachklassen.entities.Projektwhiteboard;

public class ProjektwhiteboardVerwaltung {
	private List<Projektwhiteboard>projektwhiteboards;
	
	public ProjektwhiteboardVerwaltung() {
		projektwhiteboards = new ArrayList<Projektwhiteboard>();
	}

	public void whiteboardHinzufuegen(String name) {
		projektwhiteboards.add(new Projektwhiteboard(name));
	}
	
	public void abteilungswhiteboardBeitreten(String pwbName, int anr, AbteilungswhiteboardVerwaltung avw) {
		Abteilungswhiteboard a = avw.gibAbteilungswhiteboard(anr);
		Projektwhiteboard p = this.gibProjektwhiteboard(pwbName);
		
		p.beitreten(a);
	}
	
	public void nachrichtHinterlegen(String pwbName, String nachricht) {
		for (Projektwhiteboard p:projektwhiteboards) {
			if (p.getName().equals(pwbName))
				p.setNachricht(nachricht);
		}
	}
	
	public Projektwhiteboard gibProjektwhiteboard(String name) {
		for (Projektwhiteboard p:projektwhiteboards) {
			if (p.getName().equals(name))
				return p;
		}
		assert(false);
		return null;
	}
	
	public String gibProjektName(int listPos) {
		return projektwhiteboards.get(listPos).getName();
	}
	
	public int gibProjektAnzahl() {
		return projektwhiteboards.size();
	}
	
	public String toString() {
		StringBuffer sb = new StringBuffer();
		
		if (projektwhiteboards.isEmpty())
			return "Keine Projektwhiteboards eingetragen.\n";
		
		int i=0;
		for (Projektwhiteboard p:projektwhiteboards) {
			sb.append("("+i+") ");
			sb.append(p);
			sb.append("\n");
			i++;
		}
		return sb.toString();
	}
}
